package com.yeyks.dal.dao;

import com.yeyks.dal.domain.RoomInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface RoomInfoMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(RoomInfo record);

    RoomInfo selectByPrimaryKey(Integer id);

    List<RoomInfo> selectAll();

    int updateByPrimaryKey(RoomInfo record);

    List<RoomInfo> selectByHotelId(Integer id);

    int insertReturnId(RoomInfo record);

    int updateRoomValid(@Param("ids") List<Integer> ids, @Param("valid") Boolean valid);

    List<RoomInfo> selectByHotelIds(@Param("ids") List<Integer> ids);

    List<RoomInfo> selectByHotelIdAndTitle(@Param("id") Integer id, @Param("title") String title);

    List<RoomInfo> selectByIds(@Param("ids") List<Integer> ids);

    int updateExtraInfo(@Param("id") Integer id, @Param("info") String info);

    int updateIfNotNullByPrimaryKey(RoomInfo record);

    List<RoomInfo> selectRoomsByHotelId(Map<String, Object> map);

    List<RoomInfo> selectValidByHotelId(Integer hotelId);

    int deleteById(@Param("id") Integer id, @Param("isDel") Integer isDel);

    List<RoomInfo> selectRoomByAvailable();

    List<RoomInfo> selectRoomsByHotelIdNew(Map<String, Object> map);
}